﻿Imports System.Text
Public Class FrmEtikettUtskrift

    Private Sub FrmEtikettUtskrift_Load(sender As Object, e As EventArgs) Handles MyBase.Load
        Try

        Dim vsId As Integer = Form1.dgvPakkejobber.CurrentRow.Cells.Item("varesalgsId").Value
        Dim sql As String = "SELECT * FROM varesalg WHERE varesalgsId = '" & vsId & "'"

        Dim varesalg As DataTable = Database.Query(sql)     'Søker opp varesalget fra basen
        Dim kNr As Integer = varesalg.Rows.Item(0).Item("kundeNr")  'finner kundenummeret

        Dim kunden As New Kunde(kNr)    'henter info om kunden
        Dim leveringsadresse As String = varesalg.Rows.Item(0).Item("leveringsAdresse").ToString

        Dim etikettText As New StringBuilder
        With etikettText
            .Append("Bestillingsnummer: " & vsId)
            .AppendLine()
            .Append("Bestilt av: " & kunden.FulltNavn & vbTab & "KundeNr: " & kunden.id)
            .AppendLine()
            .AppendLine()
            .Append("LEVERINGSADRESSE: ")
            .AppendLine()
            .Append(leveringsadresse)
            .AppendLine()
            .AppendLine()
            .Append("Kaker i bestillingen:")
            .AppendLine()

        End With
        For i = 0 To Form1.dgvKakerSkalPakkes.Rows.Count - 1 Step 1
            Dim kakenavn As String = Form1.dgvKakerSkalPakkes.Rows.Item(i).Cells.Item("kakeNavn").Value.ToString
            Dim kakePris As Integer = Database.Query("SELECT kakePakkeUtsalgsPris FROM kakepakke INNER JOIN kakeoppskrift ON kakepakke.kakeId= kakeoppskrift.kakeId WHERE kakeoppskrift.kakeNavn= '" & kakenavn & "' AND kakepakke.varesalgsId='" & vsId & "'").Rows.Item(0).Item("kakePakkeUtsalgsPris")

            With etikettText
                .Append(vbTab & kakenavn & vbTab & "Kr.: " & kakePris & ",-")
                .AppendLine()
            End With
        Next
        With etikettText
            .Append(vbTab & "Totalpris: " & vbTab & "Kr.: " & varesalg.Rows.Item(0).Item("varesalgsBelop").ToString)
        End With

        txtEtikett.Text = etikettText.ToString

        Dim sql2 As String = "UPDATE varesalg SET status='Ferdig pakket' WHERE varesalgsId='" & vsId & "'"
        Database.Query(sql2)

            MsgBox("Varesalgets status er endret til 'Ferdig pakket'")
        Catch ex As Exception
            MsgBox(ex.Message)
        End Try

    End Sub

    Private Sub btnSkrivUt_Click(sender As Object, e As EventArgs) Handles btnSkrivUt.Click
        PrintFrmEtikett.Print()
        Me.Close()

    End Sub

    Private Sub btnLagre_Click(sender As Object, e As EventArgs) Handles btnLagre.Click
        MsgBox("Forslag til videreutvikling: å koble dette til regnskapssystemet og fakturere fortløpende" & vbNewLine & "Forslag til videreutvikling: automatisk varling på e-post til kunde om at pakken kan hentes eller er på vei")

    End Sub

    Private Sub FrmEtikettUtskrift_FormClosed(sender As Object, e As FormClosedEventArgs) Handles MyBase.FormClosed
        Form1.dgvKakerSkalPakkes.DataSource = Nothing
        Form1.dgvKakerSkalPakkes.Columns.Remove("Pakket")

        Form1.dgvPakkejobber.DataSource = Nothing


    End Sub
End Class